Next:
Kernel data type & Kernel Interface Function
, Previous:
Interrupt_Kernel Interface
, Up:
Index
port I/O_Kernel Interface
port I/O
<asm/io.h>
<linux/ioport.h>
1. I/O에 대한 가상주소 매핑
void
*
ioremap
(
unsigned
long
phys_addr
,
unsinged
long
size
)
;
// physical
주
소
를
가
상
주
소
로
매
핑
void
*
ioremap_nocache
(
unsigned
long
phys_addr
,
unsigned
long
size
)
;
//
캐
시
에
복
제
하
지
않
음
void
iounmap
(
void
*
addr
)
;
//
매
핑
해
제
2. I/O memory 읽기
unsigned
int
ioread8
(
void
*
addr
)
;
//8
비
트
읽
기
unsigned
int
ioread16
(
void
*
addr
)
;
//16
비
트
읽
기
unsigned
int
ioread32
(
void
*
addr
)
;
//32
비
트
읽
기
3. I/O memory 쓰기
void
iowrite8
(
u8
value
,
void
*
addr
)
;
//8
비
트
쓰
기
void
iowrite16
(
u16
value
,
void
*
addr
)
;
//16
비
트
쓰
기
void
iowrite32
(
u32
value
,
void
*
addr
)
;
//32
비
트
쓰
기
4. I/O port 입출력(x86)
unsigned
inb
(
unsigned
port
)
;
void
outb
(
unsigned
char
byte
,
unsigned
port
)
;